5.3. Programın Bellek Gereksinimi Programın bellek gereksinimi, programın veya fonksiyonun yürütülmesi sırasında gerekli bellek miktarıdır; üç kısımdan oluşur. Biri, program kodu, ikincisi programın üzerinde çalıştığı veri ve üçüncüsü de fonksiyon çağırmalarda kullanılan yığın (stack) alanıdır. Dolayısıyla bir programın bellek gereksinimi hesaplanırken her üçü ayrı ayrı gözönüne alınır:
Eğer, program içerisinde rekürsif özelliği olan fonksiyon yok ise üçüncü kısım olan yığın alanı ihmal edilebilir. Çünkü fonksiyon çağırmalarında parametre aktarımı, geri dönüş adresinin tutulması gibi bilgiler yığında tutulurlar. Dolayısıyla çok fazla içiçe fonksiyon çağırmaları yığın bellek alanını ihmal edilemeyecek kadar şişirebilir. Program kodu, Veri ve Yığın aynı anda bilgisayar belleğini kullanırlar. Eğer program, proseslere ayrılmamışsa, yani hepsi bir bütünse program kodu, yaklaşık olarak, doğrudan program kodunun saklandığı dosya büyüklüğündedir. Ancak, program, prosesler şeklinde tasarlanmışsa, bu durumda program kodu, bellekte, aynı anda çalışması gereken proseslerin işgal ettiği alan büyüklüğündedir. Veri ise, program içerisinde kullanılan değişken, dizi veya veri yapılarının toplamıdır; bunlar için gerekli bellek alanı veri için gerekli bellek diye adlandırılır. |